import {
  DataBoard,
  User,
  UserFilled,
  VideoCamera,
  VideoCameraFilled,
  VideoPlay,
  ChatDotRound,
  CreditCard,
  Coin,
  Present,
  Promotion,
  List,
  Share,
  Bell,
  Trophy,
  Document
} from '@element-plus/icons-vue'

// 移动端管理员菜单 - 带图标和分组
export const MOBILE_ADMIN_MENU_ITEMS = [
  {
    group: '핵심 관리',
    items: [
      { path: '/dashboard', label: '대시보드', icon: DataBoard },
      { path: '/members', label: '회원 관리', icon: User },
      { path: '/partners', label: '파트너 관리', icon: UserFilled },
    ]
  },
  {
    group: '콘텐츠 관리',
    items: [
      { path: '/channel-management', label: '채널 관리', icon: VideoCamera },
      { path: '/live-management', label: '라이브 관리', icon: VideoCameraFilled },
      { path: '/video-management', label: '비디오 관리', icon: VideoPlay },
      { path: '/chat-rooms', label: '채팅방 관리', icon: ChatDotRound },
      { path: '/advertisement-management', label: '광고 관리', icon: Promotion },
    ]
  },
  {
    group: '결제 & 선물',
    items: [
      { path: '/payment', label: '결제 관리', icon: CreditCard },
      { path: '/point-package-management', label: '포인트 상품 관리', icon: Coin },
      { path: '/gift-management', label: '선물 관리', icon: Present },
      { path: '/gift-send-management', label: '선물 발송', icon: Promotion },
      { path: '/gift-sends', label: '선물 기록', icon: List },
    ]
  },
  {
    group: '시스템 관리',
    items: [
      { path: '/admin-referral', label: '관리자 추천코드', icon: Share },
      { path: '/notice', label: '공지사항 설정', icon: Bell },
      { path: '/ranking-management', label: '랭킹 관리', icon: Trophy },
      { path: '/logs', label: '사용자 로그', icon: Document },
    ]
  }
] as const

// 移动端파트너 메뉴
export const MOBILE_PARTNER_MENU_ITEMS = [
  {
    group: '기본 관리',
    items: [
      { path: '/dashboard', label: '대시보드', icon: DataBoard },
      { path: '/members', label: '회원 관리', icon: User },
      { path: '/chat-rooms', label: '채팅방 관리', icon: ChatDotRound },
      { path: '/gift-send-management', label: '선물 발송', icon: Promotion },
    ]
  }
] as const

// 호환성 내보내기
export const ADMIN_MENU_ITEMS = MOBILE_ADMIN_MENU_ITEMS.flatMap(group => group.items)
export const PARTNER_MENU_ITEMS = MOBILE_PARTNER_MENU_ITEMS.flatMap(group => group.items)
export const MENU_ITEMS = ADMIN_MENU_ITEMS

export type AdminMenuPath = typeof ADMIN_MENU_ITEMS[number]['path']
export type PartnerMenuPath = typeof PARTNER_MENU_ITEMS[number]['path']
export type MenuPath = AdminMenuPath | PartnerMenuPath
